/**
 * 同步本地化文件脚本
 * 将public/locales目录下的翻译文件复制到build/locales目录
 */
const fs = require('fs');
const path = require('path');

// 源目录和目标目录
const sourceDir = path.join(__dirname, '../public/locales');
const targetDir = path.join(__dirname, '../build/locales');

// 确保目标目录存在
if (!fs.existsSync(targetDir)) {
  fs.mkdirSync(targetDir, { recursive: true });
}

// 复制目录函数
function copyDir(src, dest) {
  // 创建目标目录
  if (!fs.existsSync(dest)) {
    fs.mkdirSync(dest, { recursive: true });
  }

  // 读取源目录下的所有文件和子目录
  const entries = fs.readdirSync(src, { withFileTypes: true });

  for (const entry of entries) {
    const srcPath = path.join(src, entry.name);
    const destPath = path.join(dest, entry.name);

    if (entry.isDirectory()) {
      // 如果是目录，递归复制
      copyDir(srcPath, destPath);
    } else {
      // 如果是文件，直接复制
      fs.copyFileSync(srcPath, destPath);
      console.log(`已复制: ${srcPath} -> ${destPath}`);
    }
  }
}

// 执行复制
try {
  copyDir(sourceDir, targetDir);
  console.log('本地化文件同步完成!');
} catch (error) {
  console.error('同步本地化文件时出错:', error);
  process.exit(1);
} 